@color0: #ffffff; // Appears 15 times
@color1: #409eff; // Appears 11 times
@color2: #f56c6c; // Appears 9 times
@color3: #e6a23c; // Appears 7 times
@color4: #e4e7ed; // Appears 3 times
@color5: #f4f6fc; // Appears 3 times
@color6: #e1e1e1; // Appears 3 times
@color7: #e0e0e0; // Appears 2 times
@color8: #fafafa; // Appears 2 times
@color9: #cccccc; // Appears 2 times

// Height variables (appears count calculates by raw css)
@height1: calc(100% - 45px); // Appears 2 times
@height2: 100%; // Appears 9 times
@height3: 45px; // Appears 3 times
@height4: 28px; // Appears 4 times
@height8: 3px; // Appears 3 times

.fc-style {
  position: relative;
  height: 100%;
  * {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  &:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  &:before {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .fc-container {
    background: @color0;
    height: @height2;
    .ant-layout {
      height: @height2 !important;
    }
    .el-container {
      background: @color0;
      height: @height2 !important;
    }
    .fc-main {
      position: relative;
      .el-container {
        bottom: 0;
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
      }
    }
    .fc-main > .ant-layout {
      bottom: 0;
      left: 0;
      position: absolute;
      right: 0;
      top: 0;
    }
  }
  .fc-container > .ant-layout {
    background: @color0;
  }
  .center-container {
    border-left: 1px solid @color7;
    border-right: 1px solid @color7;
    .btn-bar {
      background-color: @color0;
      border-bottom: 2px solid @color4;
      font-size: 18px;
      height: @height3 !important;
      line-height: @height3;
      padding: 0 10px;
      text-align: right;
      .svg-icon-spin {
        font-size: 16px;
        margin-right: 5px;
      }
    }
    .ant-layout-content {
      background: @color8;
      height: calc(@height2 - 45px);
      padding: 0;
      position: relative;
    }
    .el-main {
      background: @color8;
      height: calc(@height2 - 45px);
      padding: 0;
      position: relative;
    }
  }
  .components {
    height: @height2;
    padding: 8px 0;
    width: 100%;
    .widget-cate {
      font-size: 13px;
      padding: 8px 12px;
    }
    ul {
      margin: 0;
      overflow: hidden;
      padding: 0 10px 10px;
      position: relative;
    }
    .form-edit-widget-label {
      border: 1px solid @color5;
      display: block;
      float: left;
      font-size: 12px;
      left: 0;
      line-height: 26px;
      margin: 1%;
      overflow: hidden;
      position: relative;
      text-overflow: ellipsis;
      white-space: nowrap;
      width: 48% !important;
      &:hover {
        border: 1px dashed @color1;
      }
      &:hover > a {
        color: @color1;
      }
    }
    .form-edit-widget-label > a {
      background: @color5;
      border: 1px solid @color5;
      color: #333333;
      cursor: move;
      display: block;
      .svg-icon-spin {
        display: inline-block;
        font-size: 14px;
        margin-left: 8px;
        margin-right: 6px;
        vertical-align: middle;
      }
      span {
        display: inline-block;
        vertical-align: middle;
      }
    }
  }
  .widget-form {
    margin: 10px;
    background: @color0;
    border: 1px dashed #999999;
    min-height: calc(100vh - 145px);
    overflow: auto;
  }
  .widget-form-container {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    overflow-y: auto;
    .widget-form-list {
      // display: flex;
      // background: @color0;
      // border: 1px dashed #999999;
      // margin: 10px;
      // min-height: calc(100vh - 65px);
      // overflow: auto;
      min-height: 90px;
      padding-bottom: 20px;
      .widget-item-container {
        position: relative;
        .widget-view-action {
          background: @color1;
          bottom: -2px;
          height: @height4;
          line-height: @height4;
          position: absolute;
          right: 0;
          z-index: 10;
          .svg-icon-spin {
            color: @color0;
            cursor: pointer;
            font-size: 14px;
            margin: 0 5px;
          }
        }
        .widget-view-drag {
          background: @color1;
          height: @height4;
          left: 0;
          line-height: @height4;
          position: absolute;
          top: -2px;
          z-index: 10;
          .svg-icon-spin {
            color: @color0;
            cursor: move;
            font-size: 14px;
            margin: 0 5px;
          }
        }
      }
      .widget-col-list {
        background: @color0;
        border: 1px dashed @color9;
        min-height: 50px;
      }
      .widget-view {
        background-color: rgba(236, 245, 255, 0.3);
        border: 1px dashed rgba(170, 170, 170, 0.7);
        margin: 2px;
        padding-bottom: 18px;
        position: relative;
        h1 {
          font-size: 16px;
          font-weight: bold;
        }
        .widget-view-description {
          color: #909399;
          font-size: 13px;
          height: 15px;
          line-height: 15px;
          margin-top: 6px;
        }
        &:after {
          bottom: 0;
          display: block;
          left: 0;
          position: absolute;
          right: 0;
          top: 0;
        }
        &:hover {
          background: #ecf5ff;
          outline-offset: 0;
          outline: 1px solid @color1;
          .widget-view-drag {
            display: block;
          }
        }
        &:hover.active {
          border: 1px solid @color1;
          outline-offset: 0;
          outline: 2px solid @color1;
        }
      }
      .widget-view.active {
        border: 1px solid @color1;
        outline: 2px solid @color1;
      }
      .widget-view.ghost {
        background: @color2;
        border: 2px solid @color2;
        box-sizing: border-box;
        content: '';
        font-size: 0;
        height: @height8;
        outline-width: 0;
        overflow: hidden;
        padding: 0;
      }
      .widget-col {
        background-color: rgba(253, 246, 236, 0.3);
        padding: 5px;
        &:hover {
          background: #fdf6ec;
          outline-offset: 0px;
          outline: 1px solid @color3;
        }
        &:hover.active {
          border: 1px solid @color3;
          outline-offset: 0;
          outline: 2px solid @color3;
        }
        .widget-view-action.widget-col-action {
          background: @color3;
          bottom: -2px;
          height: @height4;
          line-height: @height4;
          position: absolute;
          right: -2px;
          z-index: 10;
          .svg-icon-spin {
            color: @color0;
            cursor: move;
            font-size: 14px;
            margin: 0 5px;
          }
        }
        .widget-view-drag.widget-col-drag {
          background: @color3;
          height: @height4;
          left: -2px;
          line-height: @height4;
          position: absolute;
          top: -2px;
          z-index: 10;
          .svg-icon-spin {
            color: @color0;
            cursor: move;
            font-size: 14px;
            margin: 0 5px;
          }
        }
        & {
          after {
            display: none;
          }
        }
      }
      .widget-col.active {
        border: 1px solid @color3;
        outline: 2px solid @color3;
      }
      .widget-col.ghost {
        background: @color2;
        border: 2px solid @color2;
        box-sizing: border-box;
        content: '';
        font-size: 0;
        height: @height8;
        outline-width: 0;
        overflow: hidden;
        padding: 0;
      }
      .ghost {
        background: @color2;
        border: 2px solid @color2;
        box-sizing: border-box;
        content: '';
        font-size: 0;
        height: @height8;
        outline-width: 0;
        overflow: hidden;
        padding: 0;
      }
    }
    .ghost {
      background: @color2;
      border: 2px solid @color2;
      position: relative;
      & {
        after {
          background: @color2;
        }
      }
    }
    li.ghost {
      font-size: 0;
      height: 5px;
      list-style: none;
      overflow: hidden;
    }
  }
  .widget-config-container {
    position: relative;
    .ant-layout-header {
      background-color: @color0;
      border-bottom: 2px solid @color4;
      height: @height3 !important;
      line-height: @height3 !important;
      padding: 0 5px;
    }
    .el-header {
      background-color: @color0;
      border-bottom: 2px solid @color4;
      height: @height3 !important;
      line-height: @height3 !important;
      padding: 0 5px;
    }
    .config-tab {
      cursor: pointer;
      display: inline-block;
      font-size: 14px;
      font-weight: 500;
      height: 41px;
      line-height: 41px;
      position: relative;
      text-align: center;
      width: 130px;
    }
    .config-tab.active {
      border-bottom: 2px solid @color1;
    }
    .config-content {
      background: @color0;
      overflow: auto;
      padding: 10px;
      .ant-form-item-label {
        font-weight: 500;
      }
      .el-form-item__label {
        font-weight: 500;
        padding: 0;
      }
      .ant-form-item {
        border-bottom: 1px solid @color6;
        padding-bottom: 10px;
      }
      .el-form-item {
        border-bottom: 1px solid @color6;
        padding-bottom: 10px;
      }
      h4 {
        border-bottom: 1px solid @color6;
        padding-bottom: 10px;
      }
      .label {
        font-size: 14px;
        font-weight: 500;
        margin: 0 5px;
        &:first-child {
          margin-left: 0;
        }
      }
      .drag-item {
        cursor: move;
        font-size: 16px;
        margin: 0 5px;
      }
    }
    .ghost {
      background: @color0;
      border: 1px dashed @color1;
      & {
        after {
          background: @color0;
          bottom: 0;
          content: '';
          display: block;
          left: 0;
          position: absolute;
          right: 0;
          top: 0;
        }
      }
    }
    ul {
      margin: 0;
      padding: 0;
    }
    li.ghost {
      display: block;
      font-size: 0;
      list-style: none;
      position: relative;
    }
  }
  .form-empty {
    color: @color9;
    font-size: 20px;
    left: 50%;
    margin-left: -150px;
    position: absolute;
    text-align: center;
    top: 200px;
    width: 300px;
  }
  .widget-empty {
    background-position: 50%;
  }
}
